The present invention relates generally to multi-media computers and more particularly to a computerized personality system in the form of a screen saver or message notification system for making computers easier to interact with.
Originally the computer screen saver served the simple, but potentially important, function of blanking the computer screen after a certain period of inactivity. This was done to prevent a stationary image from being burned into the phosphor and permanently damaging the CRT. Subsequent screen saver applications have taken on an entertainment value, providing animated screen displays and playback of prerecorded audio clips and also a security function requiring entry of password prior to using computer. In general, the prerecorded sound clips have been hard coded into the screen saver application and have not been user definable. Also, there has been no mechanism for dynamically generating sound clips to fit differed events within the screen saver application. As such, the screen saver has remained largely a form of entertainment, with little other usefulness, aside from the original purpose of protecting CRT displays from image burn-in.
The present invention seeks to extend the screen saver into a new domain. Without diminishing-its usefulness in protecting CRT monitors and providing entertainment, the present system provides a computer personality and message notification system. The system automatically generates simulated spoken messages in response to events within the computer system. The user can easily customize these messages or add new messages simply by typing the message text into the system. A sophisticated text-to-speech engine with linguistic database generates naturally sounding speech that can accompany graphical displays such as computer generated animation. If desired, sophisticated rules may be employed in selecting and pronouncing the speech, simulating a human assistant.
According to one aspect of the invention, the system employs a linguistic database comprising a collection of words, names, phrases and/or grammatical elements. These entries may be tagged for their appropriateness to different contexts. A message assembler responsive to an event generation mechanism, assembles utterances (grammatical sentences, or at least natural sounding statements) from elements selected from the linguistic database. The event generation mechanism may be part of the computer operating system or incorporated into one or more application programs running on the operating system. An event handler mechanism determines the occurrence of certain events (in the simplest case, at random or regular intervals) or in response to monitored external events (such as user entered keystrokes, mouse clicks, operating system interupts, and so forth). The system further includes a text-to-speech engine that generates natural-sounding speech from the assembled utterances supplied by the message assembler.
To enhance the simulation of a human attendant, the message assembler may be sensitive to both the type of event relayed by the event generation mechanism and to optionally provided, user-defined parameters. This sensitivity may take the form of selecting different types of expressions or grammatical constructions under certain circumstances; or of using different subsets of the linguistic database under different circumstances.
The result is a simulated computer persona that can readily handle conventional screen saver functions, including security functions, while providing useful spoken messages that match the computer's operating context.